1. Field of the Invention
This invention pertains generally to video coding, and more particularly to binarization coding in Context-Based Adaptive Binary Arithmetic Coding (CABAC) within high efficiency video coding standards.
2. Description of Related Art
Storage and communication of videos in an efficient manner requires coding mechanisms for reducing spatial and temporal redundancies. Although a number of coding techniques exist, ongoing efforts are directed at increasing the efficiencies of these enCOder/DECoders (codecs) which respectively compress and decompress video data streams. The purpose of codecs is to reduce the size of digital video frames in order to speed up transmission and save storage space. The video coding advances made over the years have collectively contributed to the high levels of coding efficiency provided by state-of-the-art codecs. It is desired, however, that coding be performed at still higher efficiencies to further decrease video bit rates.
The latest of these developing coding standards is referred to as High Efficiency Video Coding (HEVC), from the Joint Collaborative Team on Video Coding (JCT-VC), which is a joint effort of the MPEG and VCEG standardization committees.
This developing standard includes both high efficiency and low complexity configurations includes a number of coding tools and includes either Context Adaptive Variable Length Coding (CAVLC) in a low complexity configuration, and Context Adaptive Binary Arithmetic Coding (CABAC) in a high efficiency configuration. The High Efficiency configuration uses and supports increased bit precision for internal operations and an adaptive loop filter.
HEVC employs Coding Unit (CU) structure, whose main difference from a macroblock structure (e.g., in previous MPEG-2 or AVC codecs) is that instead of a fixed size (e.g., 16×16), the size can vary up to 128×128. One Largest Coding Unit (LCU) represents both flat area and busy area, whereby providing a single QP value for one LCU is insufficient for obtaining high levels of subjective quality. Accordingly, HEVC separates the LCU into Coding-Units (CU), each of which are represented by their own QP which can differ from one CU to another. Delta-QP (dQP) can then be defined as the difference between QP of current CU and predicted QP based on the selected prediction algorithm within the CUs that are of sizes, such as 8×8, 16×16, 32×32 or 64×64. HEVC may perform QP prediction similarly as in the Advanced Video Coding (AVC) standard, although any desired technique may be utilized with the present invention without departing from the teachings of the invention.
Test model HM 3.0 of the HEVC coding standard uses Delta-QP (dQP) entropy coding in CABAC consisting of two steps: (1) flagging whether dQP is zero or not, and (2) if dQP is nonzero, the signed dQP is mapped to an unsigned codenumber and the unsigned codenumber is mapped to a binary string using unary codes. It will be noted that unary coding is an entropy encoding in which a natural number ‘n’ is represented by n ones followed by a zero or alternatively with n−1 ones followed by a zero. For example 5 can be represented as 111110 or 11110 in these unary representations.
Accordingly, new coding standards are being developed toward increasing coding efficiency and reducing coding complexity. The present invention provides improvements of the Delta-QP (dQP) coding within CABAC entropy coding.